debian/patches/: patchset updated
authorMatteo F. Vescovi <mfv@debian.org>
Sat, 18 Mar 2017 21:39:07 +0000 (22:39 +0100)
committerMatteo F. Vescovi <mfv@debian.org>
Sat, 18 Mar 2017 21:39:07 +0000 (22:39 +0100)
- 0001-Fix_unaligned_access_on_sparc64.patch added

Closes: #806208
debian/patches/0001-Fix_unaligned_access_on_sparc64.patch [new file with mode: 0644]
debian/patches/series [new file with mode: 0644]

diff --git a/debian/patches/0001-Fix_unaligned_access_on_sparc64.patch b/debian/patches/0001-Fix_unaligned_access_on_sparc64.patch
new file mode 100644 (file)
index 0000000..0a9d579
--- /dev/null
@@ -0,0 +1,45 @@
+From: "Matteo F. Vescovi" <mfv@debian.org>
+Date: Sat, 18 Mar 2017 22:37:39 +0100
+Subject: Fix_unaligned_access_on_sparc64
+
+---
+ extensions/gggl.c | 26 +++++++-------------------
+ 1 file changed, 7 insertions(+), 19 deletions(-)
+
+diff --git a/extensions/gggl.c b/extensions/gggl.c
+index b01659f..88d1c12 100644
+--- a/extensions/gggl.c
++++ b/extensions/gggl.c
+@@ -748,25 +748,13 @@ conv_rgbA8_rgba8 (unsigned char *src, unsigned char *dst, long samples)
+   while (n--)
+     {
+-      if (src[3] == 255)
+-        {
+-          *(unsigned int *) dst = *(unsigned int *) src;
+-          dst                  += 4;
+-        }
+-      else if (src[3] == 0)
+-        {
+-          *(unsigned int *) dst = 0;
+-          dst                  += 4;
+-        }
+-      else
+-        {
+-          unsigned int aa = ((255 << 16) + (src[3] >> 1)) / src[3];
+-          *dst++ = (src[0] * aa + 0x8000) >> 16;
+-          *dst++ = (src[1] * aa + 0x8000) >> 16;
+-          *dst++ = (src[2] * aa + 0x8000) >> 16;
+-          *dst++ = src[3];
+-        }
+-      src += 4;
++      dst[0] = src[0];
++      dst[1] = src[1];
++      dst[2] = src[2];
++      dst[3] = 255;
++
++      src   += 3;
++      dst   += 4;
+     }
+   return samples;
+ }
diff --git a/debian/patches/series b/debian/patches/series
new file mode 100644 (file)
index 0000000..7ea7343
--- /dev/null
@@ -0,0 +1 @@
+0001-Fix_unaligned_access_on_sparc64.patch